1. Field of the Invention
The present invention relates to systems and methods, including computer systems and methods, for recognizing standard collections of audio tracks such as the ones found on audio compact discs, audio DVDs, or their digitized versions and providing additional information to the user regarding these tracks.
2. Description of Related Art
Methods exist for reading table of contents data from compact discs and using the data to lookup information in databases or to monitor and control the playback of a compact disc. For example, U.S. Pat. Nos. 6,230,192 and 6,330,593 (“the '192 and '593 patents”) relate generally to delivering supplemental entertainment content to a user listening to a musical recording. The content is accessed using an Internet Web browser, which is able to control and monitor playback of the recording. Using conventional techniques, an identifier is computed for the CD being played. The identifier may be determined based on the number and lengths of tracks on the CD, which are measured in blocks (frames) of 1/75th of a second. For example, the identifier may be a concatenation of the track lengths. In practice, to shorten the identifier, the track lengths may be expressed in coarser units, e.g., in units of ¼th of a second.
The identifier is used to retrieve information from a database relating to the recordings played by the user. Specifically, the identifier is computed upon detection of a disc in the CD player of the user's computer and sent to a remote server hosting a Web site containing information about the CDs produced by a particular record company. The server uses the identifier as a key to lookup a single matching record in a database and outputs the information stored in that matching record. This information includes a Web address (URL) that is related to the audio CD (e.g., that of the artists' home page), simple data such as the names of the songs, and also complementary entertainment, including potentially video clips, which is accessed using the stored URL.
Among the disadvantages of such a system is that it does not account for differences in track times that may occur in different releases or pressings of CDs of the same recording. Such differences could result in an identifier being computed that does not match the identifier stored in the database, which in turn might prevent retrieval of the data relating to the recording. If the track length differences are large enough, then this problem would arise even if the identifier is expressed in coarser units than the data retrieved from the CD, e.g., rounded to the nearest ¼ second rather than 1/75th second.
The '192 and '593 patents also purport to describe a “fuzzy comparison algorithm” for determining whether two CDs are the same. The algorithm involves truncating track lengths obtained from table of contents data and summing the total track time and track time differences between two CDs. These values are then used to determine a percentage that is “indicative of how well the two CDs match.” It is unclear from the description in these patents how this algorithm is to be used. If it is used to find a match between a CD being played and an entry in a database, then such an approach has at least two disadvantages. First, this calculation would have to be performed for each and every entry in the database to find a single matching record, which would be extremely inefficient. Second, the truncation of the track lengths raises the possibility that two different CDs might yield the same truncated track lengths and be identified as a match. Or, as discussed above, two different pressings or releases of the same CD might yield different truncated track lengths and therefore would not be identified as a match. In either case, a correct matching record in the database would not be found.
Thus, the approaches taken in the '192 and '593 patents suffer from a number of disadvantages, because they are predicated on computing a single identifier for a recording and looking up information in a database containing only one matching record. What is needed is a system for efficiently retrieving information relating to a digital audio recording that takes into account differences in track lengths in different pressings or releases of a recording as well as their digitized versions stored on a PC.